﻿/**************************************************************************************************
* 作    者：石国庆          创始时间：2014-12-26                                      
* 修 改 人：石国庆          修改时间：2014-12-26                                                    
* 描    述：商品表映射                                                                  
**************************************************************************************************/
using System;
using BAT.APT.Domain.Entities;
using FluentNHibernate.Mapping;

namespace BAT.APT.Domain.Maps
{
    public class ProductMap : ClassMap<Product>
    {
        public ProductMap()
        {
            //如果映射到的表名称不同于实体的类名称，我们可以定义表的名称,oracle的数据库表明不能为空所以要指定表明,小写的到数据库中会变为大写的
            Table("product_t");
            Id(m => m.Id).GeneratedBy.Identity();
            Map(m => m.CreateTime);
            Map(m => m.Del);

            Map(m => m.Name).Length(100).Not.Nullable();
            Map(m => m.Description).Length(500).Not.Nullable();
            Map(m => m.UnitPrice);
            Map(m => m.Discount);
            //默认情况下，Fluent NHibernate配置实体为延迟加载（lazy loaded）。如果不喜欢这样，可以使用下面的代码改变默认的行为
            //Not.LazyLoad();
        }
    }
}